// CODE128A.js - 已改为 ES Module 格式，兼容 UniApp

// 引入父类 CODE128 和常量
import CODE128 from './CODE128.js';
import { A_START_CHAR, A_CHARS } from './constants.js';

// CODE128A 类：强制使用 CODE128-A 字符集编码
class CODE128A extends CODE128 {
  constructor(data, options) {
    // 在数据前添加 CODE128A 起始符（ASCII 200, \xC8）
    super(A_START_CHAR + data, options);
  }

  // 验证输入数据是否全部属于 CODE128A 字符集
  valid() {
    // A_CHARS 定义在 constants.js 中，通常是 [\x00-\x5F]
    const regex = new RegExp(`^${A_CHARS}+$`);
    return regex.test(this.data);
  }
}

// 默认导出
export default CODE128A;